var e = require;
var t = module;
var o = exports;
Object.defineProperty(o, "__esModule", {value: !0});
var n = cc._decorator,
    a = n.ccclass,
    i =
        (n.property,
        (function () {
            function e() {}
            var t;
            return (
                (t = e),
                (e.getRandomString = function () {
                    for (var e = [], o = 0; o < arguments.length; o++) e[o] = arguments[o];
                    return e[t.Range(0, e.length)];
                }),
                (e.Range = function (e, t) {
                    return Math.floor(Math.random() * (t - e)) + e;
                }),
                (e.moveTowards = function (e, t, o) {
                    var n = t.x - e.x,
                        a = t.y - e.y,
                        i = n * n + a * a;
                    if (0 == i || (o >= 0 && i <= o * o)) return t;
                    var r = Math.sqrt(i);
                    return cc.v2(e.x + (n / r) * o, e.y + (a / r) * o);
                }),
                (e.Distance = function (e, t) {
                    var o = e.x - t.x,
                        n = e.y - t.y;
                    return Math.sqrt(o * o + n * n);
                }),
                (e.Angle_X = function (e, t) {
                    return Math.atan2(t.y - e.y, t.x - e.x) * (180 / Math.PI);
                }),
                (e.Angle_Y = function (e, t) {
                    return Math.atan2(t.x - e.x, t.y - e.y) * (180 / Math.PI);
                }),
                (e.getTailPosOuter = function (e, t, o) {
                    var n = Math.sqrt((e.x - t.x) * (e.x - t.x) + (e.y - t.y) * (e.y - t.y));
                    return new cc.Vec2((o * (t.x - e.x)) / n + t.x, (o * (t.y - e.y)) / n + t.y);
                }),
                (e.getPosOuter = function (e, t, o) {
                    var n = Math.sqrt((e.x - t.x) * (e.x - t.x) + (e.y - t.y) * (e.y - t.y));
                    return new cc.Vec2((o * (t.x - e.x)) / n, (o * (t.y - e.y)) / n);
                }),
                (e.getNowDate = function (e) {
                    void 0 === e && (e = !0);
                    var t = new Date(),
                        o = t.getMonth() + 1,
                        n = t.getDate();
                    return (
                        o <= 9 && (o = "0" + o),
                        n <= 9 && (n = "0" + n),
                        e
                            ? t.getFullYear() +
                              "-" +
                              o +
                              "-" +
                              n +
                              " " +
                              t.getHours() +
                              ":" +
                              t.getMinutes() +
                              ":" +
                              t.getSeconds()
                            : t.getFullYear() + "-" + o + "-" + n
                    );
                }),
                (e.ConTimeUnit = function (e, t) {
                    void 0 === t && (t = !1);
                    var o = Math.round((e - 1800) / 3600),
                        n = Math.round((e - 30) / 60) % 60,
                        a = e % 60;
                    return 0 == t
                        ? (o > 0 ? o : "00") +
                              (n > 0 ? (n >= 10 ? ":" + n : ":0" + n) : ":00") +
                              (a > 0 ? (a >= 10 ? ":" + a : ":0" + a) : ":00")
                        : (o > 0 ? o + "小时" : "") + (n > 0 ? n + "分钟" : "") + (a > 0 ? a + "秒" : "");
                }),
                (e.EventTimes = function (e, t) {
                    void 0 === t && (t = void 0);
                    var o = Date.parse(new Date().toString());
                    if (null == t) {
                        var n = cc.sys.localStorage.getItem(e),
                            a = null == n || "" == n || null == n ? null : Number(n);
                        return null == a ? null : a - o <= 0 ? 0 : (a - o) / 1e3;
                    }
                    return cc.sys.localStorage.setItem(e, o + 1e3 * t), o + t;
                }),
                (e.GetTimes = function (e) {
                    var t = Date.parse(new Date().toString()),
                        o = cc.sys.localStorage.getItem(e),
                        n = null == o || "" == o || null == o ? null : Number(o);
                    return null == n ? null : (n - t) / 1e3;
                }),
                (t = __decorate([a], e))
            );
        })());
o.default = i;
